define([
    "UtilDir/util",
    "UtilDir/tool",
    "UtilDir/searchBlock",
    "EasyUI", "EasyUI-lang"
], function (Util, Tool, SearchBlock, Theme) {
    var divisionId = '';
    var divisionName = '';
    /**
     * 页面初始化
     */
    var init = function () {
        initSearchBlock();
        initDivision();
        queryBtnBind();
        //浏览器窗口大小变化后，表格宽度自适应
        $(window).resize(function () {
            createZwGrid();
        });

    };
    var initSearchBlock = function () {
        SearchBlock.init("searchBlock");
        require(["jquery", "Date", "DateCN", "css!DateCss"], function ($) {
            $("#complex1").datetimepicker({
                //设置使用语言：cn是自定义的中文版本，还可以扩展其他语言版本
                language: "cn",
                //输出格式化
                format: 'yyyy-mm-dd',
                //直接选择‘今天’
                todayBtn: true,
                //设置最精确的时间选择视图
                minView: 'month',
                //高亮当天日期
                todayHighlight: true,
                //选择完毕后自动关闭
                autoclose: true
            });
            /* 删除按钮 */
            $("#complex_show1").on("click", function () {
                $('#complex1').datetimepicker('show');
            });
            /* 显示按钮 */
            $("#complex_del1").on("click", function () {
                $("#complex1").val("");
            });

            $("#complex2").datetimepicker({
                //设置使用语言：cn是自定义的中文版本，还可以扩展其他语言版本
                language: "cn",
                //输出格式化
                format: 'yyyy-mm-dd',
                //直接选择‘今天’
                todayBtn: true,
                //设置最精确的时间选择视图
                minView: 'month',
                //高亮当天日期
                todayHighlight: true,
                //选择完毕后自动关闭
                autoclose: true
            });
            /* 删除按钮 */
            $("#complex_show2").on("click", function () {
                $('#complex2').datetimepicker('show');
            });
            /* 显示按钮 */
            $("#complex_del2").on("click", function () {
                $("#complex2").val("");
            });
        })
    };

    // 查询日期--校验
    var queryBtnBind = function () {
        $("#btnSearch").click(function () {
            createZwGrid();
        });
        $("#btnReset").click(function () {
            $("#complex1").val("");
        });
    };
    // 31省--表格数据
    var createZwGrid = function () {
        // 先初始化省数据
        $("#zwGrid").datagrid({
            url: getServer() + "/fw/reinforce/cities",
            remoteSort: false,
            method: "GET",
            fitColumns: true,
            autoRowHeight: false,
            showFooter: true,
            columns: [[
                {field: 'provice', title: '省份', width: '24%', align: 'center'},
                {field: 'city', title: '地市级', width: '25%', align: 'center'},
                {
                    field: 'reinforeCount', title: '加固工程采集数量', width: '25%', sum: 'true', align: 'center', sortable: true,
                    sorter: function (a, b) {
                        return (a > b ? 1 : -1);
                    }
                },
                {
                    field: 'newCount',
                    title: '新增工程采集数量',
                    width: '25%',
                    sum: 'true',
                    align: 'center',
                    sortable: true,
                    sorter: function (a, b) {
                        return (a > b ? 1 : -1);
                    }
                }
                
            ]],
            onLoadSuccess: function (data) {
//              console.log(data);
                $('#zwGrid').datagrid('statistics'); //合计
            },
            queryParams: {
                province: divisionName,
                divisionId: divisionId,
                createTime: $("#complex1").val()
            },
        });
    };
    // 表格拓展--排序和计算总和
    $.extend($.fn.datagrid.methods, {
        statistics: function (jq) {
            var opt = $(jq).datagrid('options').columns;
            var rows = $(jq).datagrid("getRows");
            var footer = new Array();
            footer['sum'] = "";
            for (var i = 0; i < opt[0].length; i++) {
                if (opt[0][i].sum) {
                    footer['sum'] = footer['sum'] + sum(opt[0][i].field, 1) + ',';
                }
            }
            var footerObj = new Array();
            if (footer['sum'] != "") {
                var tmp = '{' + footer['sum'].substring(0, footer['sum'].length - 1) + "}";
                var obj = eval('(' + tmp + ')');
                if (obj[opt[0][0].field] == undefined) {
                    footer['sum'] += '"' + opt[0][0].field + '":"<b>合计:</b>"';//第0列显示为合计
                    obj = eval('({' + footer['sum'] + '})');
                } else {
                    obj[opt[0][0].field] = "<b>合计:</b>" + obj[opt[0][0].field];
                }
                footerObj.push(obj);
            }
            if (footerObj.length > 0) {
                $(jq).datagrid('reloadFooter', footerObj);
            }

            function sum(filed) {
                var sumNum = 0;
                var str = "";
                for (var i = 0; i < rows.length; i++) {
                    var num = rows[i][filed];
                    sumNum += Number(num);
                }
                return '"' + filed + '":"' + sumNum.toFixed(2) + '"';
            }
        }
    });

    // 管理员查看所有的省
    var province = function (html) {
        $.ajax({
            url: "/app/divisions/root/subdivisions",
            contentType: "application/json",
            type: "get",
            success: function (data) {
                console.log(data);
                $.each(data, function (idx, item) {
                    html += "<option value='" + item.divisionName + "' exid='" + item.divisionId + "'>" + item.divisionName + "</option>";
                });
                $("#belongtoProvince").append(html);
                // 赋值初始值
                divisionId = data[0].divisionId;
                divisionName = data[0].divisionName
                // 回显数据
                $("#belongtoProvince").val(divisionName);
                // 表格
                createZwGrid();
                // 柱状图-目前注释掉，后期可能需要
                // 柱状图
                //queryCharData();
            }
        });
        $("#belongtoProvince").change(function () {
            divisionId = $(this).find("option:selected").attr("exid");
            divisionName = $(this).find("option:selected").attr("value");
            console.log(divisionId);
            console.log(divisionName);
        });
    }
    // 初始化省份
    var initDivision = function () {
        $.ajax({
            url: getServer() + "/fw/taskForm/user/division",
            contentType: "application/json",
            type: "get",
            success: function (data) {
//              console.log(data);
                var html = "";
                if (data.message == '超级管理员') {
                    province(html);
                } else {
                    html = "<option value='" + data.divisionName + "' exid='" + data.divisionId + "'>" + data.divisionName + "</option>";
                    $("#belongtoProvince").append(html);
                    $("#belongtoProvince").attr("disabled", true);
                    divisionName = data.divisionName;
                    divisionId = data.divisionId;
                    $("#belongtoProvince").val(divisionName);
                    // 表格
                    createZwGrid();

                }
            }
        });
    }

    return {
        init: init
    };
});
